package com.generalbackend.common.annotion;

import com.generalbackend.common.enums.MenuEnum;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author tim.xie
 * @date 2021/12/15 10:40
 */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface ApiPermission {
    /**
     * API名称
     */
    String name();
    /**
     * 拥有接口权限的菜单集合
     */
    MenuEnum[] menu() default MenuEnum.DefaultApi;
    /**
     * API描述
     */
    String desc() default "";
    /**
     * 是否为所有角色开放
     */
    boolean isAll() default false;
    /**
     * 是否为公共API
     */
    boolean isCommon() default false;
}
